package com.nutricia.common.api.result;

import com.nutricia.common.api.info.CmsMenuInfo;
import com.nutricia.common.api.info.SystemUserBaseInfo;
import com.nutricia.common.lang.BaseResponse;

import java.util.ArrayList;
import java.util.List;

/**
 * 获取用户所拥有的权限和菜单
 *
 * @author: huangsheng
 * @date: 2017/10/26
 */
public class GetUserPermissionAndMenuRes extends BaseResponse {

    /**
     * 用户code
     */
    private String userCode = "common";

    /**
     * 用户信息
     */
    private SystemUserBaseInfo userInfo;

    /**
     * 用户权限下的菜单数据
     */
    private List<CmsMenuInfo> menus;

    /**
     * 用户拥有的所有权限code集合
     */
    private List<String> permissionCodes = new ArrayList<>();

    /**
     * Gets user code.
     *
     * @return the user code
     */
    public String getUserCode() {
        return userCode;
    }

    /**
     * Sets user code.
     *
     * @param userCode the user code
     */
    public void setUserCode(String userCode) {
        this.userCode = userCode;
    }

    /**
     * Gets menus.
     *
     * @return the menus
     */
    public List<CmsMenuInfo> getMenus() {
        return menus;
    }

    /**
     * Sets menus.
     *
     * @param menus the menus
     */
    public void setMenus(List<CmsMenuInfo> menus) {
        this.menus = menus;
    }

    /**
     * Gets permission codes.
     *
     * @return the permission codes
     */
    public List<String> getPermissionCodes() {
        return permissionCodes;
    }

    /**
     * Sets permission codes.
     *
     * @param permissionCodes the permission codes
     */
    public void setPermissionCodes(List<String> permissionCodes) {
        this.permissionCodes = permissionCodes;
    }

    /**
     * Gets user info.
     *
     * @return the user info
     */
    public SystemUserBaseInfo getUserInfo() {
        return userInfo;
    }

    /**
     * Sets user info.
     *
     * @param userInfo the user info
     */
    public void setUserInfo(SystemUserBaseInfo userInfo) {
        this.userInfo = userInfo;
    }
}
